Recently, in order to satisfy the desire to dynamically change the network structure, etc., research and development have been performed for Software Defined Network (SDN) which can dynamically control data transmission paths on a network by a software.
As an example, in an SDN referred to as OpenFlow, a switch apparatus arranged on a network performs a data transmission process in accordance with commands from a controller arranged at the center. In OpenFlow, the controller transmits a pattern regarding information included in the header of packet data, and a process which should be executed regarding the packet data which includes the pattern in the header thereof, to the switch apparatus side. In the switch apparatus, the pattern and the process are stored to be associated with each other. Also, the switch apparatus refers to the header of the input packet data, and when the header matches the pattern designated by the controller, the switch apparatus executes the process associated with the pattern.
The header of the packet data includes information which identifies the communication flow of the packet data, specifically, identification information of a reception port, a transmission source MAC (Media Access Controller) address, destination MAC address, VLAN (Virtual Local Area Network) information, a transmission source IP address, a destination IP address, a transmission source port number, a destination port number, etc.
As for the process which should be executed, a process to transmit packet data through a specific port, a discarding process, a process to rewrite header information, etc., may be designated, and executed by the switch apparatus (WO 2010/103909).
However, according to the conventional SDN technology such as the above-mentioned OpenFlow, packet data is controlled on the basis of the information identifying the communication flow of the packet data, namely, the header information, and thus, setting therefor is not usually easy. For example, in order to set the transmission path for the packet data from a video delivery site to be different from the transmission path for the packet data from other sites, an administrator should be previously informed of the IP address of the video delivery site, and thus, this is inconvenient to perform setting.
In order to deal with the case where the IP address of the communication destination is not always fixed, such as the case of peer-to-peer communication, setting on the basis of the header information may be difficult. Further, if the communication path control can be performed on the basis of an application at the transmission source terminal, operation status of a user, the geographical location of the terminal, and the like, such control can be applied in a wide range. However, at present, the application type is not recorded in the header, and thus, under the present circumstances, the control cannot be performed at the network device side.